/*
 * SharedMemory.h
 *
 *  Created on: 03/10/2013
 *      Author: ruben
 */

#ifndef SHAREDMEMORY_H_
#define SHAREDMEMORY_H_

#include "Protocolo.h"
#include <stdlib.h>
#include <stdio.h>
#include <iostream>
#include <sys/types.h>
#include <sys/stat.h>
#include <dirent.h>
#include <string.h>
#include <errno.h>
#include <signal.h>
#include <sys/inotify.h>
#include <sys/shm.h>


// tamaño definido para una shared memory
#define SHMSZ 100

using namespace std;

class SharedMemory{
private:
        int shmid;
        t_partida *buffer;
        key_t llave;

public:
    SharedMemory();
    SharedMemory(key_t key);
	~SharedMemory();
	bool conectarShm();
	t_partida leerDatos();
	bool escribirDatos(t_partida *);
	void cerrarShm();
	void setKey(key_t);
	key_t getShmLlave();

};

#endif
